iT邦幫忙

2024 iThome 鐵人賽

DAY 2
0
AI/ ML & Data

從0開始的影像辨識之路系列 第 3

OpenCV-python:影像辨識的基礎臉部偵測-加碼更新(Day 2)

  • 分享至 

  • xImage
  •  

本次主題是以colab的環境進行學習的,在本篇文章中,我將講解影像辨識的臉部偵測技術應用。依照進度每個禮拜都會記錄不同的影像辨識方法,基本順序會從:

  1. OpenCV
  2. 圖片分類(Tensorflow-Image classification)
  3. 語意分割(Semantic Segmentation)
  4. 生成模仿圖片(CycleGAN and pix2pix in PyTorch)
  5. 物件辨識(tensorflow object detection)
  6. 額外分享(MediaPipe)

實際使用:
這是一個簡單的人臉偵測模型。

執行程式碼:

import cv2
import matplotlib.pyplot as plt
output = cv2.imread("自己圖片的路徑")
output = cv2.cvtColor(output,cv2.COLOR_BGR2RGB)
output_gray = cv2.cvtColor(output, cv2.COLOR_RGB2GRAY)

face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades+"haarcascade_frontalface_default.xml")
faces = face_cascade.detectMultiScale(output_gray)

for (x, y, w, h) in faces:
    cv2.rectangle(output, (x, y), (x+w, y+h), (0, 255, 255), 3)
plt.imshow(output,cmap="gray")
plt.show()

結果:


那麼實際執行完程式後,我相信有些會有一個疑問那就是有沒有其他的模型可以使用?或是這可不可以自己訓練?
第一個部分是有其他模型的下面會再補充,第二個部分答案是可以自己訓練,只是我不會講解這個部分,主要原因是因為Tensorflow會比較好使用以及訓練所以通常都會選用tensorflow或是pytorch。

其他模型:

  • haarcascade_eye_tree_eyeglasses.xml
  • haarcascade_frontalface_alt2.xml
  • haarcascade_fullbody.xml
  • haarcascade_profileface.xml
  • haarcascade_upperbody.xml
  • haarcascade_eye.xml
  • haarcascade_frontalface_alt_tree.xml
  • haarcascade_lefteye_2splits.xml
  • haarcascade_righteye_2splits.xml
  • haarcascade_frontalcatface_extended.xml
  • haarcascade_frontalface_alt.xml
  • haarcascade_licence_plate_rus_16stages.xml
  • haarcascade_russian_plate_number.xml
  • haarcascade_frontalcatface.xml
  • haarcascade_frontalface_default.xml
  • haarcascade_lowerbody.xml
  • haarcascade_smile.xml

文章主題一覽:

  1. OpenCV-python:影像辨識基礎技能-1(Day 1)
  2. OpenCV-python:影像辨識基礎技能-2(Day 2)
  3. OpenCV-python:影像辨識的基礎臉部偵測-加碼更新(Day 2)

  1. Tensorflow-python:圖片分類-1-資料集準備(Day 3)
  2. Tensorflow-python:圖片分類-2-模型訓練(Day 4)
  3. Tensorflow-python:圖片分類-3-模型實際使用(Day 5)
  4. Tensorflow-python:圖片分類-4-完整程式總結(Day 6)

  1. Tensorflow-python:語意分割-1-資料集介紹(Day 7)
  2. Tensorflow-python:語意分割-2-模型訓練(Day 8)
  3. Tensorflow-python:語意分割-3-模型實際使用(Day 9)
  4. Tensorflow-python:語意分割-4-完整程式總結(Day 10)

  1. CycleGAN-python:生成相似圖片「由簡化繁」-1-資料集介紹(Day 11)
  2. CycleGAN-python:生成相似圖片「由簡化繁」-2-模型訓練(Day 12)
  3. CycleGAN-python:生成相似圖片「由簡化繁」-3-模型實際使用(Day 13)
  4. CycleGAN-python:生成相似圖片「由簡化繁」-4-完整程式總結(Day 14)
  5. CycleGAN-python:生成相似圖片「由繁化簡」-1-資料集介紹(Day 15)
  6. CycleGAN-python:生成相似圖片「由繁化簡」-2-模型訓練(Day 16)
  7. CycleGAN-python:生成相似圖片「由繁化簡」-3-模型實際使用(Day 17)
  8. CycleGAN-python:生成相似圖片「由繁化簡」-4-完整程式總結(Day 18)

  1. tensorflow-object-detection:物件辨識-3-模型實際使用(Day 19)
  2. tensorflow-object-detection:物件辨識-4-模型實際使用_應用篇(Day 20)

  1. MediaPipe:額外分享-1-手部追蹤(Day 21)
  2. MediaPipe:額外分享-2-人臉檢測(Day 22)
  3. MediaPipe:額外分享-3-物體檢測(Day 23)
  4. MediaPipe:額外分享-4-姿勢檢測(Day 24)

  1. Tensorflow-python:圖片分類-1-模型介紹(Day 25)
  2. Tensorflow-python:圖片分類-2-變形應用(Day 26)
  3. Tensorflow-python:語意分割-1-模型介紹(Day 27)
  4. Tensorflow-python:語意分割-2-變形應用(Day 28)
  5. CycleGAN-python:生成相似圖片-1-模型介紹(Day 29)
  6. CycleGAN-python:生成相似圖片-2-變形應用(Day 30)

粗體字為額外更新的文章。


上一篇
OpenCV-python:影像辨識基礎技能-2(Day 2)
下一篇
Tensorflow-python:圖片分類-1-資料集準備(Day 3)
系列文
從0開始的影像辨識之路31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言